$(function() {
	var pageCount = 10; //初始化显示的分页标签的页码数，默认10
	var page = 0; //默认page为0
	var userInfo = '';
	var keywords = null;
	var cartGoodsNum = 0;//购物车数量为0
	var goodsList = null;//获取本地保存的当前页所有的商品
	var cartGoods = [];//保存加入到购物车的数据
	/**
	 * 初始化页面
	 * */
	function init() {
		userInfo = JSON.parse(sessionStorage.getItem("userInfo"));
		var goods = JSON.parse(sessionStorage.getItem("cartGoods"));
		if(goods){
			cartGoods = goods;
		}
		if(userInfo) {
			$('#userName').html("你好，" + userInfo.name);
			queryGoods(userInfo, page);
			var totalGoods = 0;
			if(cartGoods){//如果有本地保存的购物车数据，则显示购物车数量
				console.log(cartGoods)
				for(var i=0; i<cartGoods.length; i++){
					totalGoods += cartGoods[i].count;
				}
				$('#shopCarGoodsNum').html(totalGoods);
				cartGoodsNum = totalGoods;
			}
			setTimeout(function() {
				goodsList = JSON.parse(sessionStorage.getItem("goodsList"));//获取本地保存的当前页所有的商品
				if(!goodsList){
					window.location.reload();//如果当前页缓存的商品没有及时获取到，刷新页面
				}
				initPaginator();
			}, 1200)
		} else {
			window.location.href = "../index.html";
		}
	}
	init();

	//初始化分页标签函数
	function initPaginator() {
		pageCount = util.pageCount;
		var options = {
			bootstrapMajorVersion: 3, // bootstrap.css文件版本
			currentPage: 1, // 当前页数
			totalPages: pageCount, // 总页数
			numberOfPages: 10, //当前显示页数
			alignment: "center", //居中显示
			size: "normal",
			itemTexts: function(type, page, current) {
				switch(type) {
					case "first":
						return "首页";
					case "prev":
						return "上一页";
					case "next":
						return "下一页";
					case "last":
						return "末页";
					case "page":
						return page;
				}
			},
			//控制分页标签的显示隐藏
			shouldShowPage: function(type, page, current) {
				switch(type) {
					case "first":
						return false;
					case "last":
						return false;
					default:
						return true;
				}
			},
			// 点击事件，用于通过ajax来刷新整个list列表
			onPageClicked: function(event, originalEvent, type, page) {
				// 按分页从后台获取第 + page + 页的具体数据
				queryGoods(userInfo, page-1, keywords);
				setTimeout(function(){
					$(window).scrollTop(0);
				},600);
				setTimeout(function(){
					goodsList = util.goodslists;//获取本地保存的当前页所有的商品
				},1200);
			}
		};
		$('#page').bootstrapPaginator(options);
	}

	//跳转到购物车
	$('.shopcar').click(function() {
		window.location.href = "shopCart.html";
	})

	//搜索按钮搜索事件
	$('#searchBtn').click(function() {
		keywords = $('#searchTxt').val();
		queryGoods(userInfo, page, keywords);
		setTimeout(function() {
			goodsList = util.goodslists;//获取本地保存的当前页所有的商品
			initPaginator();
		}, 1000)
	})
	//搜索框直接键盘enter事件
	$('#searchTxt').focus(function(){
		$('#searchTxt').keydown(function(event){
			if(event.keyCode == 13){
				keywords = $('#searchTxt').val();
				queryGoods(userInfo, page, keywords);
				setTimeout(function() {
					goodsList = util.goodslists;//获取本地保存的当前页所有的商品
					initPaginator();
				}, 1000)
				return false;
			};
		})
	})
	//添加进购物车事件
	$('#goods-list-box ul').on('click','li .addToCart',function(e){
		var index = $(this).parents('li').index();
		//产品图片点击飞入效果
		var cloneImg = $(this).parents('dd').prev().find('img').clone();
		cloneImg.css({
			width: 100,
			height: 100
		});
		cloneImg.fly({
			start: {
				left: e.clientX-50, //开始位置（必填）#fly元素会被设置成position: fixed
				top: e.clientY-100, //开始位置（必填）
			},
			end: {
				left: $('#myCart').position().left + 50, //结束位置（必填）
				top: $('#myCart').position().top + 20, //结束位置（必填）
				width: 0, //结束时高度
				height: 0, //结束时高度
			},
			autoPlay: true, //是否直接运动,默认true
			onEnd: function() {
				cloneImg.remove();
				++cartGoodsNum;
				var goodsObj = {
					count:1,
					goodsItem:goodsList[index]
				}
				var isAdded = false;
				if(cartGoods.length>0){//如果当前数组大于0，说明已经有商品数据
					for(var i=0; i<cartGoods.length; i++){
						if(goodsList[index].code == cartGoods[i].goodsItem.code){
							cartGoods[i].count++;
							isAdded = true;//如果当前点击的商品已经在购物车内，商品数量加一，是否已经添加商品标志为是
						}
					}
					if(isAdded == false){//如果是否已经添加商品标志为否，说明已经存储的商品数据中没有同样的商品，则添加商品
						cartGoods.push(goodsObj);
					}
				}else{//没有商品数据，直接添加
					cartGoods.push(goodsObj);
				}
				sessionStorage.setItem("cartGoods",JSON.stringify(cartGoods));
				$('#shopCarGoodsNum').html(cartGoodsNum);
			} //结束回调
		});
	})
	var top = $('#myCart').position().top;
	$(window).scroll(function(){
		if($(window).scrollTop() >= top){
			$('#myCart').addClass('active');
		}else{
			$('#myCart').removeClass('active');
		}
	})
})